\subsubsection{Local variable storage}

A function could allocate space in the stack for its local variables just by decreasing 
the \gls{stack pointer} towards the stack bottom.

% I think here, "stack bottom" means the lowest address in the stack space,
% but the reader might also think it means towards the top of the stack space,
% like in a pop, so you might change "towards the stack bottom" to
% "towards the lowest address of the stack", or just take it out,
% since "decreasing" also suggests that.

Hence, it's very fast, no matter how many local variables are defined.
It is also not a requirement to store local variables in the stack.
You could store local variables wherever you like, 
but traditionally this is how it's done.

